package com.school.entity;

	// 子类：教师（继承Person）
	public class Teacher extends Person {
	    // 子类特有属性（protected：子类、同包可见）
	    protected Course course;

	    // 子类带参构造方法：调用父类构造
	    public Teacher(String teacherId, String name, String gender) {
	        super(teacherId, name, gender); // 初始化父类属性
	        this.remark = "教师"; // 访问父类default属性（同包可访问）
	    }

	    // 子类特有方法：开课
	    public void openCourse(Course course) {
	        this.course = course;
	        System.out.println("教师 " + name + " 开设课程：" + course.getCourseName());
	    }

	    // 重写父类printInfo()方法：打印授课信息
	    @Override
	    public void printInfo() {
	        super.printInfo(); // 继承父类基础信息打印逻辑
	        System.out.println("=== 授课信息 ===");
	        if (course != null) {
	            System.out.println("授课课程：" + course.getCourseName());
	            System.out.println("上课地点：" + course.getLocation());
	            System.out.println("上课时间：" + course.getTime());
	        } else {
	            System.out.println("暂未开设课程");
	        }
	    }

	    // Getter/Setter（子类特有属性）
	    public Course getCourse() {
	        return course;
	    }

	    public void setCourse(Course course) {
	        this.course = course;
	    }
	}
